Fifo shift register memory with marker and data bit storage

ABSTRACT

A first-in, first-out (FIFO) memory having a plurality of memory cells, each for storing one data bit and one marker bit. The marker bit is provided for steering the data bits into successive memory cells when writing. Reading data is accomplished by shifting the data in succession out one end of the FIFO. Each memory cell consists only of MOS-transistors, which are connected so as to function as sample-and-hold devices and clocked inverter devices. One sample-and-hold transistor and one inverter each connected to the same clock will store a bit, either data or marker. Sample-and-hold transistors and inverters are coupled between the bit storage sections of common and adjacent memory cells so as to provide the proper logic for steering the data bits for shifting to adjacent cells the data and marker bits. The invention described herein may be manufactured, used, and licensed by or for the Government for governmental purposes without the payment to us of any royalty thereon.

United States Patent ns1 3,646,526

Fagan et al. Feb. 29, 1972 [54] FIFO SHIFT REGISTER MEMORY Eta? Multiphase Clocking ACQJQI REQIQ WITH MARKER AND DATA BIT Memory, Electronic Design News, June 10, 1968, pp. 50- 52, STORAGE M.

72] .Inventors: Lloyd 1). Fagan, Santa Clara, Calif.; David Emmmw'nemad (mick Assistant Examiner'Stuart Hecker R. Hadde Jr. Eatontown; David llaratz New r g Lorenz M. Attorney-Harry M. Saragovrtz, Edward J. Kelly, Herbert Berl Matawan an and Jeremiah G. Murray [73] Assignee: The United States of America as represented by the Secretary of the Army V, Hm, M.

[22] Filed: 1970 A first-in, first-out (FIFO) memory having a plurality of [21] A L N 20,183 memory cells, each for storing one data bit and one marker bit. The marker bit is provided for steering the data bits into successive memory cells when writing. Reading data is accom- [52] U.S.Cl. "340/173 R, 307/208, 307/221, d b

p is e y s rftmg the data in succession out one end of the 307/238 307/246 328/37 340/1725 340/173 I FIFO. Each memory cell consists only of MOS-transistors,

340/173 RC which are connected so as to function as sam ple-and-hold e a c h 19/00 devices and clocked inverter devices. One sample-and-hold transistor and one inverter each connected to the same clock 328/37 340/173 173 173 will store a bit, either data or marker. Sample-and-hold transistors and inverters are coupled between the bit storage sections of common and adjacent memory cells so as to pro- [56] References Cl vide the proper logic for steering the data bits for shifting to UNITED STATES PATENTS adjacent cells the data and marker bits.

3,510,680 5/1970 Cogar ..307/221 5 The invention described herein may be manufactured, used, 3,297,950 1/1967 Lee ..340/ 173 FF and licensed by or for the Government for governmental pur- 2,933,622 4/1960 Clark ..307/22l poses without the payment to us of any royalty thereon.

OTHER PUBLICATIONS 7 Claims, 4 Drawing Figures Terman, Three- Phase Shift Register, IBM Technical Disclo f m 3". L 159-3128;??9. PP1

l MC M c lx-c s MC MEMORY CELL (M C) it 4* 1: sH N N 2 1 rlO? if PATENTEDFEBZS 1912 SHEET 1 [IF 2 AGENT IN VENTORS, LLOYD D. FAGAN, DAVID R. HADDEN, J11,

LORENZ M. SARLO DAVID HARATZ BY e 6 E 38 E052 9 9-x o z o 2 ATTORNEYS PATENTEDFE B 29 I972 SHEET 2 [IF 2 INVENTORS LLOYD 0. FAGAN, DAVID R. HADDEN. Jz. DAVID HARATZ a LORENZ M. SARLO 7 AGENT zmzizyzww ATTORNEYS FIFO SHIFT REGISTER MEMORY WHTH MARKER AND DATA WT STORAGE The invention described herein may be manufactured, used, and licensed by or for the Government for governmental purposes without the payment to us of any royalty thereon.

The present invention relates to electronic memory devices and more particularly to a first-in-first-out (FIFO) memory.

In the field of automatic data processing, the FIFO has found widespread use as a buffer memory. Those concerned with the development of computers have recently recognized the distinct advantages inherent in the use of metal oxide semiconductor (MOS) transistors as gain elements. Of course, the basic advantage of MOS-transistors is the ability to economically manufacture such transistors in high-quality integrated circuits. One of the most critical problems confronting designers of integrated circuits is the minimizing of the numbers and kinds of elements of which the integrated circuit is formed.

The general purpose of the present invention is to provide a FIFO memory which uses only one type of element, the MOS- transistor, and which uses a less number of transistors then prior art devices which perform the same FIFO function.

Other objects and many of the attendant advantages of this invention will be readily appreciated as the same becomes better understood by reference to the following detailed description when considered in connection with the accompanying drawings wherein:

FIG. ll shows a schematic diagram of a preferred embodiment of the invention;

FIG. 2 shows a state graph of a finite state machine which controls the device of FIG. 1; and

FIGS. 3 and 4 show schematic diagrams of a portion of the device shown in FIG. 1.

Referring now to the drawings there is shown in FIG. 1 a FIFO memory having N memory cells. Each of the memory cells contains 12 MOS-transistors capable of storing both an information bit and a marker bit. With a plurality of the memory cells connected as shown it is possible to:

1. Write information into each of the cells in succession as determined by the location of the marker bit,

2. Read the information bit in the first memory cell and shift all the other information bits one cell to the right,

3. Shift the marker bit one cell to the right upon reading an information bit and to the left upon the writing of an information bit.

More specifically, the lower portion of each of the memory cells contains the marker bit, which is used as a marker to steer the incoming information into the first empty memory cell, i.e., the memory cell closest to the right which has no information stored therein. The marker bit is shifted one memory cell to the left each time an information bit is stored. When writing, the information bits are steered in succession into the first empty cell closest to the right side of the FIFO.

Information is read out of the FIFO from the right side by merely shifting the information contained in memory cell No. 1 out of the FIFO and then shifting all of the remaining information bits one cell to the right. The marker bit is also shifted one cell to the right so that the next information bit to be stored will be steered to the proper cell.

A more specific description of the structure and operation of the FIFO will be described with the aid of the state graph of FIG. 2, which shows the various states assumed and inputs provided by a typical finite state machine (not shown). These FIFO inputs will provide the various control and data signals to the FIFO memory. Each of the circles in FIG. 2 represents one of nine states of the finite state machine. Such machines may be implemented with oscillators, logic circuits, and drivers, for providing the indicated input signals to the FIFO memory. The finite state machine normally assumes the state marked 8-0 which puts a logical zero or ground voltage on all of the inputs listed in FIG. 2.

Shown in FIG. 3 is an MOS transistor 10, having a gate terminal 12, a source terminal 11, and a drain terminal 13, connected to the gate terminal of a second MOS-transistor. This configuration will function as a binary sample-and-holcl means. For purposes of this description the zero voltage is defined as a binary 0" and a negative voltage V" is a binary I." When the gate terminal 12 goes negative the transistor 10 turns on" and the drain terminal 13 assumes the voltage on source terminal 11. When the negative voltage on gate terminal 12 is removed, the transistor 10 turns at? and the voltage on drain terminal 13 will remain there for a finite time in the form of a charge on the stray capacitance of the connection between the drain terminal 13 and the next transistor. Therefore, terminal 13 will assume a 0" or a l," for a finite time if terminal 11 was a 0 or a l respectively and terminal 12 was impulsed by a negative voltage or a l FIG. 4 shows a pair of MOS-transistors 20 and 21 having their source terminals and the gate terminal of transistor 21 connected in common to terminal 22. The drain tenninals of transistors 20 and 21 are connected in common to terminal 23 which in turn is connected to the source terminal of a third MOS-transistor. This configuration will function as a clocked binary inverter. When the voltage on terminal 22 goes negative and the voltage on terminal 25 is zero, transistor 21 will be turned on" and the negative voltage on terminal 22 will be transferred through transistor 21 to terminal 23. Terminal 23 will maintain the negative voltage in the form of a capacitive charge when the negative voltage on terminal 22 is removed. If, however, the voltage on terminal 25 was negative, transistor 20 will be turned on and the zero voltage on terminal 22 will be transferred to terminal 23 or, in other words, the charge will be removed. Therefore, the voltage on terminal 23 will be the inverse of the voltage on terminal 25 after each time a clock signal on terminal 22 goes momentarily negative. More specific descriptions of the physics of the MOS-transistor may be readily found in standard texts. The FIFO memory of FIG. 1, which will now be described in more detail, is made up of a plurality of interconnected sample-andhold devices and clocked inverters of the type just described.

The FIFO inputs, as mentioned earlier, are controlled by a finite state machine (not shown) having the states shown in FIG. 2. Normally the finite state machine is in the state 5-0. The states 8-1 to 8-8 are states which the machine will automatically assume depending on whether an operator or a computer system wishes to write, read, write and read, or hold the information contained in the FIFO. When in one of the particular states 8-0 to 8-8, the finite state machine will automatically apply voltages to those FIFO input terminals indicated in the particular circle which represents that state. The various FIFO input terminals have generally the following functions:

FIFO input function Dl Data Input W Write HD Hold Data SH Shift Data Right RT Shift Marker Right LF Shift Marker Left C, Clock l C, Clock 2 C, Clock 3 A marker bit storage cell 30 is interconnected between memory cell No. 1 and some of the FIFO inputs. Cell 30 is provided primarily for the purpose of holding or storing the marker bit when the FIFO is empty. The state of cell 30, when the marker bit is stored therein, is such that there is a negative voltage on the drain terminal of transistor 40 which is indicative of a binary 1. Also, at this time there will be a binary O on the output terminal of inverter 41 i.e., the output of inverter 41 will be at ground or zero potential.

When the cell 30 contains a binary l, as just explained, then all the memory cells No. 1 to No. N contain a binary 0 in both the marker bit and infonnation bit sections. The marker bit section (lower section) is, therefore, in a state such that the drain terminals of all the transistors are at ground or zero potential which is indicative of a binary 0. At this time the output of each of the inverters 101, in the memory cells No. 1 to No. N will be at a negative potential which indicates a binary l." When the FIFO is empty, the information bit section (upper section) is in a state such that the drain terminal of the transistors 107 in each of the memory cells No. l to No. N is at ground potential or in other words contains a binary 0." Again it is pointed out that the output of the inver ters 106 will be at the negative potential indicative of the binary 1.

To summarize briefly, the state of the empty FIFO is such that cell 30 contains a l in the form of a negative voltage on the output of the sample-and-hold transistor 40 and a on the output of the clocked inverter 41, and each of the memory cells No. l to No. N contain a 0 in both the marker bit and information bit sections in the form of a ground potential on the outputs of the sample-and-hold transistors 100 and 107 respectively. Also, a binary 1 is present on the outputs of each of the inverters 101 and 106.

The structure of the FIFO and the operation thereof will now be simultaneously described by describing in detail the steps involved in the writing or storing of the binary word 1011.

When requested to store a bit of information in the FIFO, the finite state machine will leave state S-0 and automatically go to state S-l, provide the indicated inputs to the FIFO, proceed to state 8-2, again provide the indicated inputs, and then return to the state S-O.

The first binary bit l of the binary word I01 1 is stored in the FIFO by applying a 1" to the data input terminal DI. Also, a binary l or a negative voltage is applied to terminals W, HD, C and C as is indicated in FIG. 2. The negative voltage on terminal I-ID clocks each sample-and-hold transistor 105. Since the output of the inverters 106 are all 1," then the output of the transistor 105 will be a 1. Also, since the W and DI inputs are each I," then the output of AND-gate 50 and OR-gate 51 will be a l and all of the sample-and-hold transistors 1 l0 and 44 will also be clocked. When transistor 44 is turned on, by the coincidence of a 1 on data input ternrinal DI and write terminal W, the voltage on the drain terminal or output of the transistor 105 in memory cell No. 1 will be shunted to ground via transistor 44 and the output of inverter 41, which is at ground potential. Therefore, the output of transistor 105 in memory cell No. 1 will be changed from a 1" to a 0" when transistor 44 is clocked on. The output of the transistors 105 in the remaining memory cells No. 2 to No. N will not be altered when the transistors 110 are clocked on, because the voltage on the outputs of inverters 101 is negative at this time.

Terminal C is also clocked at this time and the input voltages to inverters 104 are inverted and applied as input signals to the sarnpIe-and-hold transistors 107. Terminal C is then clocked and the output or drain terminal of transistors 107 are made to assume their input voltages. The outputs of inverters 106 will assume the inverse of the transistor 107 outputs.

As just explained, the input to inverter 104 in memory cell No. 1 was forced to a zero. Therefore, the output of inverter 104 in memory cell No. l is a l and the output of transistor 107 will change to a l when clocked by terminal C, and the output of inverter 106 will change to 0." In the remaining memory cells No. 2 to No. N the input to inverter 104 was a l In these cells the outputs on transistors 107 will therefore not change.

It is again pointed out that the stored bits or the voltages on the MOS transistors are in the form of a capacitive charge which, ifperrnitted to sit long enough, will eventually leak off. Therefore, provision is made to periodically recharge the memory cells. During the write operation, the information bits are recharged when they are shifted down to the center section i.e., when the hold terminal HD is pulsed. The marker bit is recharged when it is shifted from one cell to the next after the storage of the information bit.

For example, after writing or storing a l in memory cell No. 1, it is then necessary to shift the marker bit left from cell 30 to memory cell No. 1. This operation is performed when the finite state machine is in state S-2. Terminal LF is clocked and sample-and-hold transistors 44 and 110 are all turned on. The outputs of inverters 41 and 101 are applied to the inputs of the inverters 104 in the next succeeding memory cell. Inverters 104 are then clocked by terminal C, and the input is inverted and applied to the inputs of transistors 100. Then terminal C is clocked and all of the transistors will sampleand-hold the output of inverters 104. Inverters 101 will invert the sampled bits. Therefore, the 0 on the output of inverter 41 will be sampled by transistor 44, inverted to a I by inverter 104 in memory cell No. 1, sampled by transistor 100 and inverted to a 0" by inverter 101 in cell No. 1. The l on the output of transistor 40 has now been shifted to the output of transistor 100. It is pointed out that the -V voltage on the input to sample-and-hold transistor 42 is also inverted to a 0 by inverter 43, sampIed-and-held by transistor 40, and inverted to a 1" by inverter 41. The marker bit has now been shifted to memory cell No. l.

The second bit 0 in the binary word 101 l is now stored or written in memory cell No. 2. As before, the finite state machine will leave state S-0, go to state 8-], and put a binary 0" or a ground potential on the data input terminal D1. The output of AND-gate 50 will be a 0 since data input terminal D1 is a 0 and, therefore, none of the sample-and-hold transistors 100 and 40 will be clocked on. Therefore, when the information bits are shifted from the upper section to the middle section, by the application of a negative pulse on hold terminal HD, the output of sample-and-hold transistors 105 will not be altered. More specifically, the charge on the outputs of inverters 106 will not be shunted to ground via the transistors or 44 since these transistors have not been turned on. As before, the outputs of transistors 105 will be inverted by inverters 104 when terminal C is clocked. Then terminal C, is clocked and the sample-and-hold transistors 107 will then invert the outputs of transistors 107.

To briefly summarize, when a 0 is to be stored the information bits are shifted down to the inverters 104 and shified back to the transistors 107 and inverters 106 without any change in the information. However, as explained above, the capacitive charges on the various elements 107 and 106 will have been recharged up to maximum.

At this point, the finite state machine will leave state S-1 and go to 5-2. In the 8-2 state, the marker bit, which is now in the lower section of memory storage cell No. 1, will be shifted to memory storage cell No. 2 via the sample-andhold transistor 110 in memory cell No. 1, the inverter 104, sampleand-hold transistor 100, and inverter 101 of memory cell No. 2.

The third and fourth binary bits in the binary word 1011 will then be stored in succession in memory cell No. N-] and No. N following the same procedure as just described.

When the FIFO is full, a signal derived from the output of inverter 101 in memory cell No. N-] is used to set flip-flop via sample-and-hold transistor 110 and inverter 121 in memory cell No. N. Only when the marker bit is in memory cell N0. N4, will there be a 0 on the output of the inverter 101 therein. When the last information bit is to be stored, the marker bit in memory cell No. N-l will first steer the information bit into the memory cell No. N. After steering the last information bit, the marker bit will be shifted from memory cell No. N-l to memory cell No. N. In the process of shifiing the marker bit terminal LF is pulsed, thereby clocking sampleand-hold transistor 110 in memory cell No. N and causing the drain terminal thereof or the input to inverter 121 to go to ground. The output of the inverter 121 sets flip-flop 120, thereby putting a l on output terminal F. This output F may be used to control the finite state machine and thereby indicate when the FIFO is full.

Retrieving a bit of information from the FIFO, or in other words, the reading function is performed when the finite state machine goes from state 8-0 to 3-3 to 8-4 and back to 8-0. When in state S-3, all the data bits in the FIFO are simply shifted one cell to the right and a 0 is written in memory cell No. N. The information bit, which was shifted out of memory cell No. 1, is detected on the data output terminal DO. The reading operation or the shifting of the information bits to the right is initiated, as shown in FIG. 2, by first pulsing terminal Sl-l which in turn pulses or turns on all sample-and-hold transistors 103. Therefore, the input to inverters 11M in each of the memory cells No. 1 to No. N-l. will be equal to the voltage stored on the output terminal of the inverters 106 of the succeeding memory cell. The pulse on terminal Sl-l also resets flip-flop 12ft thereby indicating that the FIFO is no longer full. The input to inverter 104 in memory cell No. N. when terminal SH is pulsed, is derived from the output of NAND-gate 122 via sample-and-hold transistor 113. Since the RT and F inputs to NAND-gate 122 are then, the output is a 1. Terminal C,, is also pulsed at this time, thereby clocking inverters 104. As before, the outputs of inverters 1014 are then stored in the information bit section of each of the memory cells No. 1 to No. N when the terminal C is clocked. The reading function is now complete and the remainder of the cycle, i.e., shift the marker bit to the right, will now be performed.

The finite state machine enters state 1, thereby clocking terminal RT which turns on the sample-and-hold transistors 109 in each of the memory cells No. 1 to No. N. Sample-andhold transistors 109 samples the outputs of the inverters 101 and applies them as inputs to inverters 104 in the preceding memory cell. The inverters 164 are clocked by input clock C, and the outputs thereof are stored in the lower section of each memory cell by a clock pulse on input clock C,,.

It is pointed out that sample-and-hold transistor 114 is also turned on when terminal RT is pulsed thereby applying the output of NAND-gate 122 to inverter 1114 in memory cell No. N. Upon clocking input terminal C a 0 will then be stored in the lower section of memory cell No. N, since the output of NAND-gate 122 is a l Sample-and-hold transistor 115 will also be turned on when terminal RT is pulsed. if the marker bit was contained in memory cell No. 1 when RT is pulsed, then output terminal D0 will go to ground potential thereby signalling that the FIFO is empty. The grounding of the DO terminal at this time may now be used to prevent any further reading of the FIFO.

it has been pointed out several times above that the information and marker bits are contained in the FIFO in the form of a capacitive charge on the MOS-devices. It was also pointed out that a recharging of all MOS-deviceswould take place during each read and write cycle. If however, after a predetermined time there should be no request to either read or write information, then in order to prevent a loss of information, the finite state machine will automatically go through a holding or recharging cycle which includes states 8-0, 5-5, 5-6, and 8-4.

In state 8-5, the HD and C, terminals are first pulsed, thereby shifting the information bits from the upper section down to the inverters 10 i. Clock terminal C is then pulsed and the information bits are again stored with a full charge back in the same upper sections of the memory cells No. 1 to No. N. State 5-6 is provided to shift the marker bit one cell to the left in the same manner as described for state 8-". Shifting of the marker bit one cell back to the right is accomplished by state 5-4. Of course, during this left and right shifting of the marker bit, the MOS-devices are recharged.

If the marker bit was contained in the last memory cell No. N, i.e., the FlFO is full, and a hold cycle is initiated, the marker bit will be shifted left out of memory cell No. N by state S-t'i. Since there are no memory cells after cell No. N in which the marker bit may be stored when shifted left, then provision must be made to insert a l back into the marker bit section of memory cell No. N, when the shift right cycle is performed by state 5-4. As described above, when the shift right cycle (state 8-4) is normally performed (FIFO not full), the output of NAND-gate 122 is a I." This 1 is inverted by inverter 104 in memory cell No. N when C, is clocked and the resulting 0" is stored by sample-and-hold transistor 100 in memory cell No. N when C is clocked. However, when the FIFO is full and there has not been a read cycle, which is initiated by a pulse on terminal SH, then the output of NAND- gate 122 is a 0" because both inputs, F and RT are a I. The input F is a l because flip-flop 120, which has been set by the full signal, will not be reset by an SH signal. Of course the RT input will also be a l for the shift right cycle, state S- 4.

Provision may also be made for a combined write-and-read cycle. If two requests, one write and one read, are made within a short predetermined time, there will be no necessity to shift the marker bit since the net change in stored information is zero. Therefore, state 8-7, which is similar to state S-1, and state 8-8, which is similar to state 3-3, are provided to first write a bit of information in the memory and then read one bit of information respectively. No shifting of the marker bit is provided in this cycle.

The MOS-transistors shown in the device of FIG. 1 may all be fabricated on a single chip. An entire memory array would be made up of a plurality of such chips connected in series. As one chip is filled, the marker bit which is shifted from memory cell No. N-l to memory cell No. N is simultaneously shifted to the marker bit storage cell 31) on the succeeding chip. The following input data is then stored on the succeeding chip in the same manner.

Functionally, the FIFO may be described as being composed of a bidirectional shift register, a unidirectional shift register and some control logic. The bidirectional shift register consists mainly of the marker bit portions of the memory cells, i.e., transistor 108 and inverter 101. Only one bit is inserted in the bidirectional shift register and this bit is shifted one stage or cell at a time either left or right depending on the operation performed.

The information bit portions of the memory cells i.e., transistor 106 and inverter 107 is simply a unidirectional shift register since the information bits therein are shifted only to the right i.e., during a read cycle. The inverters 104 are actually common to both registers and together with transistors 105, 108, 109, 110 perform three main functions. First, when shifting the bidirectional shift register either left or right, these devices actually steer or control the direction of shift. For example, when shifting the marker bit to the right from memory cell No. 2 to No. 1, the marker bit is shifted from the output of inverter 101 via sample-and-hold transistor 109 of memory cell No. 2, inverter 104 to sample-and-hold transistor of memory cell No. 1. Also, for similar reasons the inverter 104 becomes a part of the unidirectional shift register when information is being read, i.e., when information is being shifted right. Lastly, the inverter 1114 is used as a logic control element interconnecting corresponding stages of both shift registers and the data input, so as to steer the data into the proper location.

Obviously many modifications and variations of the present invention are possible in the light of the above teachings. It is therefore to be understood, that within the scope of the appended claims, the invention may be practiced otherwise then as specifically described.

What is claimed is:

1. A first-in, first-out memory comprising; a data input means for writing data into said memory; a plurality of memory cells connected in series; each said memory cell having a data bit storage means and a marker bit storage means; each said storage means including a binary sample-and-hold means and a clocked inverter means; steering means connected to each said marker bit storage means and controlled by the marker bit storage means containing said marker bit for steering data from said data input means into one of said memory cells; and shifting means connected to each of said marker bit storage means for shifting said marker bit in increments of one said memory cell for each data bit written.

2. A first-in, first-out memory including a series of memory cells connected in series; each said memory cell having a marker bit storage means, a data bit storage means, and a control means; a data input means connected to each said memory cell; each said control means including means connected to the marker bit storage means in the associated one of said memory cells and energized by a marker bit therein for steering data applied to said data input means into said data bit storagemeans of said cell containing said marker bit; and means connected to each said control means for shifting the marker bit to the succeeding memory cell of said series for each said data bit stored.

3. The memory according to claim 2 including a data bit output means connected to the first memory cell in said series; and means connected to said control means for shifting the marker bit and the data bits in each said memory cell to the preceding cell of said series for each bit read at said data output means.

4. The memory according to claim 3 and wherein said data bit storage means and said marker bit storage means each includes a sample-and-hold MOS-transistor; each said transistor having an input terminal, an output terminal, and a clock terminal; and each said input terminal being connected to each said control means whereby said data bits and said marker bits are shifted from each said control means and stored in each said storage means upon the clocking of said clock terminal.

5. The memory according to claim 4 including a marker bit storage cell means connected to the first said memory cell in said series for storing said marker bit when said memory is empty.

6. In a first-in, first-out memory for storing data bits successively in a series of memory cells connected in tandem and for shifting all said data bits successively out one end of said memory, each said memory cell comprising; a data bit storage means, a marker bit storage means, and a control means; said data bit storage means and said marker bit storage means each including a sample-and-hold transistor means and a clocked inverter transistor means; the output of said sample-and-hold transistor means being connected to the input of said clocked inverter transistor means; said control means including a clocked inverter transistor means and first, second, third and fourth sample-and-hold transistor means; the output of said inverter means in said marker bit storage means being conneeted to the input of said first and second sample-and-hold transistor means; the output of said inverter means in said data bit storage means being connected to the input of said third and fourth sample-and-hold transistor means; the input to said clocked inverter transistor means of said control means being connected to the output of said fourth sample-and-hold transistor means, to the outputs of the first and third sampleand-hold transistor means in the succeeding memory cell, and to the output of the second sample-and-hold transistor means of the preceding memory cell; and the output of said clocked inverter transistor means of said storage means connected to the inputs of said sample-and-hold transistor means in said marker bit storage means and said data bit storage means.

7. The memory according to claim 6 and wherein each said transistor means are MOS transistors. 

1. A first-in, first-out memory comprising; a data input means for writing data into said memory; a plurality of memory cells connected in series; each said memory cell having a data bit storage means and a marker bit storage means; each said storage means including a binary sample-and-hold means and a clocked inverter means; steering means connected to each said marker bit storage means and controlled by the marker bit storage means containing said marker bit for steering data from said data input means into one of said memory cells; and shifting means connected to each of said marker bit storage means for shifting said marker bit in increments of one said memory cell for each data bit written.
 2. A first-in, first-out memory including a series of memory cells connected in series; each said memory cell having a marker bit storage means, a data bit storage means, and a control means; a data input means connected to each said memory cell; each said control means including means connected to the marker bit storage means in the associated one of said memory cells and energized by a marker bit therein for steering data applied to said data input means into said data bit storage means of said cell containing said marker bit; and means connected to each said control means for shifting the marker bit to the succeeding memory cell of said series for each said data bit stored.
 3. The memory according to claim 2 including a data bit output means connected to the first memory cell in said series; and means connected to said control means for shifting the marker bit and the data bits in each said memory cell to the preceding cell of said series for each bit read at said data output means.
 4. The memory according to claim 3 and wherein said data bit storage means and said marker bit storage means each includes a sample-and-hold MOS-transistor; each said transistor having an input terminal, an output terminal, and a clock terminal; and each said input terminal being connected to each said control means whereby said data bits and said marker bits are shifted from each said control means and stored in each said storage means upon the clocking of said clock terminal.
 5. The memory according to claim 4 including a marker bit storage cell means connected to the first said memory cell in said series for storing said marker bit when said memory is empty.
 6. In a first-in, first-out memory for storing data bits successively in a series of memory cells connected in tandem and for shifting all said data bits successively out one end of said memory, each said memory cell comprising; a data bit storage means, a marker bit storage means, and a control means; said data bit storage means and said marker bit storage means each including a sample-and-hold transistor means and a clocked inverter transistor means; the output of said sample-and-hold transistor means being connected to the input of said clocked inverter transistor means; said control means including a clocked inverter transistor means and first, second, third and fourth sample-and-hold transistor means; the output of said inverter means in said marker bit storage means being connected to the input of said first and second sample-and-hold transistor means; the output of said inverter means in said data bit storage means being connected to the input of said third and fourth sample-and-hold transistor means; the input to said clocked inverter transistor means of said control means being connected to the output of said fourth sample-and-hold transistor means, to the outputs of the first and third sample-and-hold transistor means in the sucCeeding memory cell, and to the output of the second sample-and-hold transistor means of the preceding memory cell; and the output of said clocked inverter transistor means of said storage means connected to the inputs of said sample-and-hold transistor means in said marker bit storage means and said data bit storage means.
 7. The memory according to claim 6 and wherein each said transistor means are MOS transistors. 